package com.asiainfo.config;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.config.server.EnableConfigServer;

/**
 * 配置服务器。
 * 
 * <pre>
 * 启动后，任何这种形式都可以访问：http://localhost:8080/abc/def
 * 返回：{"name":"abc","profiles":["def"],"label":null,"version":null,"state":null,"propertySources":[]}
 * 其中，def为profiles，比如测试配置：http://localhost:8080/abc/test
 * 此时如果没有abc-test.yml文件，也会返回application-test.yml的配置。
 * 
 * http://localhost:8080/abc/def/ghi如果采用这种形式，则ghi认为是label。
 * 
 * 安全保护： 可使用spring security、物理网络显示、OAuth2等。推荐使用spring security，参考eureka的配置。
 * 
 * @author danni
 */
@SpringBootApplication // 也可以用@Configuration和@EnableAutoConfiguration代替
@EnableDiscoveryClient
@EnableConfigServer // 使服务成为spring cloud config服务
public class ConfigServerApplication {

	public static void main(String[] args) {
		SpringApplication.run(ConfigServerApplication.class, args);
	}
}
